package collection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;

//集合，顶级接口
public class CollectionDemo {
    public static void main(String[] args) {
        //接口集合
        Collection c=new ArrayList();//可重复数组集合
        //插入
        c.add(new Point(1,2));//重写toString后输出成员变量
        c.add(new Point(3,4));
        c.add(new Point(5,6));
        c.add(new Point(1,2));
        c.add(new Point(1,2));
        c.add(new Point(1,2));
        //[元素1.toString（），元素1.toString（），元素1.toString（），]
        System.out.println(c);
/*
boolean contains(Object o);
判断当前集合是否包含给定元素o
判断依据是给定元素是否与当前存在equals（）比较true的情况//equals判断是否相等
 */
        Point p=new Point(1,2);
        //       包含
        boolean contains=c.contains(p);
        System.out.println("是否包含"+contains);//重写equals后判断元素
/*
boolean remove（Object o）;
从当前集合中删除给定元素o的equals（）比较为true的元素
若存在重复元素则只删除一次
 */
        c.remove(p);//移除//只删除一次相同的数据
        System.out.println(c);
        //集合里存放的是元素的索引地址
        //集合（接口）        数组列表
        Collection cc=new ArrayList();
        Point pp=new Point(1,2);
        cc.add(pp);//将pp地址添加到cc中------将引用装到cc中
        System.out.println("pp"+pp);//输出pp对象中的成员变量
        System.out.println("cc"+cc);//输出cc数组列表中的对象数组中的对象元素

        pp.setX(100);//修改pp对象中成员变量x的值
        System.out.println("pp;"+pp);
        System.out.println("cc;"+cc);


        /*
        Collection c=new ArrayList();//可重复集合

        //add添加，插入
        c.add("one");
        c.add("two");
        c.add("three");
        c.add("four");
        c.add("five");
//集合重写了Object（超类）的tostring，将值转换为字符串
        //[元素1.toString（），元素2.toString（），元素2.toString（），]
        System.out.println(c);
        System.out.println("size="+c.size());//输出元素的个数
        System.out.println("是否为空集"+c.isEmpty());//判断是否为空集
        c.clear();//清空集合
        System.out.println("集合已清空");
        System.out.println(c);//c.clear后已清空[]
        System.out.println("size"+c.size());//输出数组元素的个数//已清空为0
        System.out.println("是否为空集"+c.isEmpty());//true//清空后为空集





    //                    数组列表
        Collection c1=new ArrayList();//可重复集合
        c1.add("aaa");
        c1.add("bbb");
        Collection c2=new HashSet();//不可重复集合
        c2.add("aaa");
        c2.add("bbb");
*/
    }


}
